1. The Field of the Invention
This invention generally relates to memories for use in digital computers. More particularly, this invention relates to a system architecture and an accompanying method for providing a high speed and high density semiconductor random access memory for use in digital computers.
2. Background Art
At the heart of modern digital computers is the microprocessor. The power of available microprocessors has dramatically increased in recent years. State of the art microprocessors are versatile devices capables of performing a myriad of functions. Furthermore, modern microprocessors are capable of performing millions of operations per second. The speed at which microprocessors operate is expected to continue to experience dramatic increases in the foreseeable future.
Faster microprocessor operating speeds allow a single microprocessor to perform complex operations without requiring that an interactive user experience any noticeable delay between issuing a command and receiving the results. Alternatively, a single "fast" microprocessor can handle many individual processes sequentially without introducing any significant delays which are apparent to the user of the computer. Still further, multiple microprocessors may be used in a computer to increase the effective operating speed of the computer even further or to increase the number of processes which the computer can handle.
In contrast to the increase in operating speed of modern microprocessors, many memory devices used in conjunction with microprocessors operate much more slowly than the microprocessors themselves.
While the design of some memory devices has progressed to allow such memory devices to achieve operating speeds as fast as modern microprocessors, it appears that for the foreseeable future improvements in microprocessors operating speeds will outpace improvements in memory operation speed. Thus, it is not uncommon for many computer systems to be "memory bound." That is, the performance of the computer, i.e., the number of instructions per second (IPS) which the computer is capable of performing, is limited by the performance of the memory devices used therein.
In general, the broad category of memory devices which is relied upon during the operation of a computer is referred to as random access memory (RAM). A memory device can be considered a random access device if the length of time it takes to access any two locations within the memory device is approximately equal. Thus, a magnetic disc drive storage device can be thought of as a random access device.
Most often, however, "electronic" memory devices are used in computer systems as the primary, or main, memory. Generally, such memory devices are semiconductor based (such as TTL or CMOS technology) or are based on some other scheme such as bubble memories.
The density, speed of operation, and cost of a particular memory device are generally related. For example, magnetic disc drives, while providing very dense storage at a low cost per bit, are extremely slow (their speed of operation being measured in milliseconds) compared to the operating speed of modern microprocessors (their speed of operation being measured in nanoseconds). Presently, the memory devices which are capable of operating at speeds close to those required for use with a microprocessor are based upon semiconductor technology.
As commonly available now, semiconductor memory devices (which are fabricated as monolithic integrated circuits) are commonly available in either a configuration referred to as static RAM (SRAM) or dynamic RAM (DRAM).
SRAM devices have the predominant characteristic of being able to access locations within the SRAM internal memory array in a very short time period. Presently, SRAM devices are able to access an internal memory location in a time period on the order of 20 to 100 nanoseconds. Such fast access times allow computer memories to be designed which do not cause the microprocessor to "wait" for the memory access to be completed.
SRAM devices, however, are not very "dense" using present technology. Generally, only up to 65,536 bits (64 KBits) of memory are allowed on each integrated circuit. The low "density" of SRAM devices is due to the fact that each cell in the memory array (which stores one bit) may require the formation of up to six transistors.
Alternatively, DRAM devices are very dense. Presently, DRAMs are available which allow 1,048,576 million bits (1 Mbit) of memory on each integrated circuit. It is expected that the density of DRAM devices will increase dramatically in the future. The high density of a DRAM is possible because each cell in the memory array may require as few as one transistor and a capacitor.
Since DRAM devices are very dense, the cost per bit is generally much less than the cost per bit of SRAM devices. However, DRAM devices inherently operate at slower speeds than SRAM devices. Presently, access times for DRAM devices range from 80 nanoseconds to 150 nanoseconds. Such relatively "slow" access times, when combined with the other delays experienced in a computer, are not fast enough to allow a modern microprocessor, such as the Motorola MC68020, to operate without having to "wait" for the DRAM device to complete a memory access.
Because of the foregoing considerations, a designer of computer systems who desires to provide large amounts of random access memory must use DRAM devices to keep the cost and physical size of the memory at an acceptable level. However, the use of DRAM devices has the inherent drawback of not allowing the microprocessor to operate at its maximum possible speed. Alternatively, the designer of a computer system may use SRAM devices. This will increase the cost and the physical size of the computer system but gives the advantage of providing a memory system which can keep pace with a "fast" microprocessor. Still another alternative is to use a combination of both SRAM and DRAM devices in order to arrive at a compromise between available digital memory space, computer system performance, and cost.
Thus, it will be appreciated that it would be a great advance in the art to provide a digital memory system which would provide a high density memory, at a low cost which is possible using DRAM devices, but which is also capable of accessing memory locations very rapidly as is possible when SRAM devices are used.
It would be a further advance in the art to provide a memory system for use with digital computers which could be used with modern microprocessors and which would not require the microprocessor to enter into any wait states following a memory access request.
It would be a further advance in the art to provide a memory system which is particularly well adapted for use in a computer system implementing virtual memory schemes wherin the number of memory locations available to a process appear to be greater than the number of locations physically present in the memory. It would be yet another advance in the art to provide a memory system and method which is structured so as to allow rapid access to the memory locations most likely to be accessed by the microprocessor.